package com.chinairi.mall.dao;

import com.chinairi.mall.model.ArrivalDateUpdate;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.chinairi.mall.service.modelobject.ArrivalDateUpdateMO;
import org.apache.ibatis.annotations.Param;

import java.util.Date;
import java.util.List;

/**
 * <p>
 *  Mapper 接口
 * </p>
 *
 * @author 董志涵
 * @since 2020-10-21
 */
public interface ArrivalDateUpdateMapper extends BaseMapper<ArrivalDateUpdate> {
    /**
     * 修改 处理标志位
     * @param arrivalDateUpdate
     */
    void updateFlag(@Param("arrivalDateUpdate") ArrivalDateUpdate arrivalDateUpdate);

    /**
     *买家用户获取修改到货日期的待办
     * @param receiverId
     */
    List<ArrivalDateUpdateMO> getByReceiverId(@Param("receiverId") String receiverId);

    /**
     * 自动更新到期的待办的状态
     * @param deadline
     */
    void updateFlagAuto(@Param("deadline") Date deadline);

    /**
     * 买家调整到货日期后修改
     */
    void updateDate(@Param("orderId") String orderId,@Param("newDate") Date newDate,@Param("goodsId")String goodsId);

    /**
     * 根据orderId获取最近的一个调整日期待办
     */
    List<ArrivalDateUpdate> getByOrderId(@Param("orderId") String orderId);

    /**
     *卖家用户获取修改到货日期的提醒
     * @param shopId
     */
    List<ArrivalDateUpdateMO> getRemindByShopId(@Param("shopId") String shopId);
}
